PySP: modeling and solving stochastic programs in Python
نویسندگان
چکیده
Although stochastic programming is a powerful tool for modeling decisionmaking under uncertainty, various impediments have historically prevented its widespread use. One key factor involves the ability of non-specialists to easily express stochastic programming problems as extensions of deterministic models, which are often formulated first. A second key factor relates to the difficulty of solving stochastic programming models, particularly the general mixed-integer, multi-stage case. Intricate, configurable, and parallel decomposition strategies are frequently required to achieve tractable run-times. We simultaneously address both of these factors in our PySP software package, which is part of the COIN-OR Coopr open-source Python project for optimization. To formulate a stochastic program in PySP, the user specifies both the deterministic base model and the scenario tree with associated uncertain parameters in the Pyomo open-source algebraic modeling language. Given these two models, PySP provides two paths for solution of the corresponding stochastic program. The first alternative involves writing the extensive form and invoking a standard deterministic (mixed-integer) solver. For more complex stochastic programs, we provide an implementation of Rockafellar and Wets’ Progressive Hedging algorithm. Our particular focus is on the use of Progressive Hedging as an effective heuristic for approximating Jean-Paul Watson Sandia National Laboratories Discrete Math and Complex Systems Department PO Box 5800, MS 1318 Albuquerque, NM 87185-1318 E-mail: [email protected] David L. Woodruff Graduate School of Management University of California Davis Davis, CA 95616-8609 E-mail: [email protected] William E. Hart Sandia National Laboratories Computer Science and Informatics Department PO Box 5800, MS 1318 Albuquerque, NM 87185-1318 E-mail: [email protected]
منابع مشابه
Pyomo: modeling and solving mathematical programs in Python
We describe Pyomo, an open source software package for modeling and solving mathematical programs in Python. Pyomo can be used to define abstract and concrete problems, create problem instances, and solve these instances with standard open-source and commercial solvers. Pyomo provides a capability that is commonly associated with algebraic modeling languages such as AMPL, AIMMS, and GAMS. In co...
متن کاملA Problem Solving Environment for Stochastic Biological Simulations
Stochastic simulations of biological systems vary widely in scope from reaction modules, to single cells, to cell colonies. While the same techniques for sampling the stochastic equations governing cellular processes apply to all these systems, the setup of the simulation volume and initial state for the simulations differ significantly. Lattice Microbes is a GPU accelerated stochastic biologic...
متن کاملModeling and solving a three-stage fixed charge transportation problem considering stochastic demand and price
This paper considers a three-stage fixed charge transportation problem regarding stochastic demand and price. The objective of the problem is to maximize the profit for supplying demands. Three kinds of costs are presented here: variable costs that are related to amount of transportation cost between a source and a destination. Fixed charge exists whenever there is a transfer from a source to a...
متن کاملSolving fuzzy stochastic multi-objective programming problems based on a fuzzy inequality
Probabilistic or stochastic programming is a framework for modeling optimization problems that involve uncertainty.In this paper, we focus on multi-objective linear programmingproblems in which the coefficients of constraints and the righthand side vector are fuzzy random variables. There are several methodsin the literature that convert this problem to a stochastic or<b...
متن کاملpyomo.dae: A Modeling and Automatic Discretization Framework for Optimization with Differential and Algebraic Equations
We describe pyomo.dae, an open source Python-based modeling framework that enables high-level abstract specification of optimization problems with differential and algebraic equations. The pyomo.dae framework is integrated with the Pyomo open source algebraic modeling language, and is available at http: //www.pyomo.org. One key feature of pyomo.dae is that it does not restrict users to standard...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Math. Program. Comput.
دوره 4 شماره
صفحات -
تاریخ انتشار 2012